package pe.com.hatunsol.hatun_android.dao;

import android.database.Cursor;

import java.util.ArrayList;
import java.util.List;

import pe.com.hatunsol.hatun_android.entity.DetalleVenta;
import pe.com.hatunsol.hatun_android.entity.Producto;
import pe.com.hatunsol.hatun_android.entity.Venta;

/**
 * Created by vladimir.flores on 12/03/2015.
 */
public class DetalleVentaDAO {

    public List<DetalleVenta> listadoDetalleVenta(){
        Cursor cursor = null;
        DetalleVenta detalleventa = null;
        List<DetalleVenta> lista_detalle = new ArrayList<DetalleVenta>();
        Producto producto = new Producto();
        try{
            cursor = DataBaseHelper.myDataBase.query("Venta_Detalle",null,null,null,null,null,null);
            if(cursor.moveToFirst()){
                do{
                    detalleventa = new DetalleVenta();
                    detalleventa.setIdDetalle(cursor.isNull(cursor.getColumnIndex("IdDetalle")) ? 0 : cursor.getInt(cursor.getColumnIndex("IdDetalle")));
                    detalleventa.setIdVenta(cursor.isNull(cursor.getColumnIndex("IdVenta")) ? 0 : cursor.getInt(cursor.getColumnIndex("IdVenta")));
                    //detalleventa.setProducto.(cursor.isNull(cursor.getColumnIndex("IdProducto")) ? 0: cursor.getInt(cursor.getColumnIndex("IdProducto")));
                    detalleventa.setProducto(producto);
                    detalleventa.setCantidad(cursor.isNull(cursor.getColumnIndex("Cantidad")) ? 0 : cursor.getInt(cursor.getColumnIndex("Cantidad")));
                    detalleventa.setPrecioUnitario(cursor.isNull(cursor.getColumnIndex("PrecioUnitario")) ? 0 : cursor.getDouble(cursor.getColumnIndex("PrecioUnitario")));
                    lista_detalle.add(detalleventa);

                }while (cursor.moveToNext());
            }

        }catch (Exception ex){
            ex.printStackTrace();
        }finally {
            if(cursor!=null){
                cursor.close();
            }
        }

        return lista_detalle;

    }


    public List<DetalleVenta> detalleventa(int code){
        Cursor cursor = null;
        DetalleVenta detalleVenta = null;
        List<DetalleVenta> listadetalleventa = new ArrayList<DetalleVenta>();
        try{

            cursor = DataBaseHelper.myDataBase.rawQuery("SELECT * FROM Venta_Detalle WHERE IdVenta=" + code,null);
            if(cursor.moveToFirst()){
                 do{
                    Producto producto = new Producto();
                    producto.setIdproducto(cursor.isNull(cursor.getColumnIndex("IdProducto")) ? 0 : cursor.getInt(cursor.getColumnIndex("IdProducto")));

                    detalleVenta = new DetalleVenta();
                    detalleVenta.setIdVenta(code);

                    detalleVenta.setIdDetalle(cursor.isNull(cursor.getColumnIndex("IdDetalle")) ? 0 : cursor.getInt(cursor.getColumnIndex("IdDetalle")));

                    detalleVenta.setProducto(producto);

                    detalleVenta.setCantidad(cursor.isNull(cursor.getColumnIndex("Cantidad")) ? 0 : cursor.getInt(cursor.getColumnIndex("Cantidad")));
                    detalleVenta.setPrecioUnitario(cursor.isNull(cursor.getColumnIndex("PrecioUnitario")) ? 0: cursor.getDouble(cursor.getColumnIndex("PrecioUnitario")));
                    listadetalleventa.add(detalleVenta);
                }while(cursor.moveToNext());
            }
        }catch(Exception ex){
            ex.printStackTrace();
        }finally{
            if(cursor!=null){
                cursor.close();
            }
        }

        return listadetalleventa;
    }


}
